#include "./head.h"
/* usage */
int main(int argc, char *argv[])
{
    //./client 192.168.21.128 1234
    ARGS_CHECK(argc,3);
    int sockFd = initTcp(argv[1],argv[2]);
    printf("sockfd = %d\n",sockFd);

    // 初始化数据库连接
    MYSQL *conn = init_Mysql_connection();
    if(!conn) {
        fprintf(stderr, "无法连接到数据库\n");
        return 1;
    }
    
    // 创建用户表（如果不存在）
    if(create_UserTable(conn) != 0) {
        fprintf(stderr, "创建用户表失败\n");
        mysql_close(conn);
        return 1;
    }

    int choice;
    while(1){
        display_main_menu();
        
        if(scanf("%d", &choice) != 1) {
            // 清除输入缓冲区
            while(getchar() != '\n');
            printf("无效输入，请重新选择\n");
            continue;
        }
        getchar();

        switch(choice){
            case 1://登录
                if(User_login_process(conn)==0){
                    workCmd(sockFd);
                    mysql_close(conn);
                }else{
                    continue;
                }
                break;

            case 2://注册
                if(User_registration_process(conn)==0){
                    printf("请使用新账号登录\n");
                    continue;
                }else{
                    continue;
                }
                break;
                
            case 3://退出系统
                printf("正在退出中.....\n");
                sleep(3);
                mysql_close(conn);
                return 0;

            default:
                printf("无效选择请重新输入\n");
        }
    }
    mysql_close(conn);

    //workCmd(sockFd);
    /* sleep(10); */
    return 0;
}

